Systems and methods for implementation of a smart energy profile using data-interchange encoding

ABSTRACT

Embodiments of the disclosure can provide systems and methods for implementation of a smart energy profile using data-interchange encoding. According to one embodiment of the disclosure, a system can be provided. The system can include at least one memory that stores computer-executable instructions. The system can include at least one processor configured to access the at least one memory, wherein the at least one processor is configured to execute the computer-executable instructions to receive, by the at least one processor, a control instruction for a home area network (HAN) device. The at least one processor can be configured to convert the control instruction to a JSON object and transmit the JSON object to the HAN device.

FIELD OF THE INVENTION

Embodiments of the disclosure relate generally to advanced meteringinfrastructure (AMI) smart meters, and more particularly to systems andmethods for implementation of a smart energy profile usingdata-interchange encoding.

BACKGROUND OF THE DISCLOSURE

A wide variety of utility meters are configured to measure consumptionand/or communicate with other network devices. For example, smart meterscan be configured to transmit messages containing consumption dataand/or other monitoring data to household appliances as well as serversand/or controllers. With any communication network or communicationtechnique that may be utilized by a utility meter, in particular, smartmeters, there is an increasing demand for certain memory resources bemade available.

SUMMARY

Some or all of the above needs and/or problems may be addressed bycertain embodiments of the disclosure. Disclosed embodiments may includeimplementing a smart energy profile (SEP) using data-interchangeencoding, such as Javascript Object Notation (JSON). According to oneembodiment of the disclosure, there is disclosed a system with at leastone memory that stores computer-executable instructions. The system caninclude at least one processor configured to access the at least onememory, wherein the at least one processor is configured to execute thecomputer-executable instructions to receive, by the at least oneprocessor, a control instruction for a home area network (HAN) device.The at least one processor can be configured to convert the controlinstruction to a JSON object and transmit the JSON object to the HANdevice.

According to another embodiment of the disclosure, there is disclosed amethod that can include receiving, from a headend server by at least oneprocessor of an energy service portal (ESP), a control instruction for ahome area network (HAN) device. The method can further includeconverting the control instruction to a JavaScript Object Notation(JSON) object and transmitting the JSON object to the HAN device.

According to another embodiment of the invention, there is a disclosedone or more computer-readable media storing computer-executableinstructions that, when executed by at least one processor, configurethe at least one processor to perform certain operations. The operationscan include receiving, from a headend server by at least one processorof an energy service portal (ESP), a control instruction for a home areanetwork (HAN) device from a headend server; parsing the controlinstruction into at least a common interface model (CIM) object and atleast one attribute; generating a C programming structure for the CIMobject; generating a C programming schema for each at least oneattribute; encoding the C programming structure and the C programmingschema using a JAVASCRIPT Object Notation (JSON) syntax to create a JSONobject; and transmitting the JSON object to the HAN device.

Other embodiments, systems, methods, apparatus aspects, and features ofthe disclosure will become apparent to those skilled in the art from thefollowing detailed description, the accompanying drawings, and theappended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

Reference will now be made to the accompanying drawings, which are notnecessarily drawn to scale, and wherein:

FIG. 1 is a schematic block diagram of a computer environment showing anexample system for implementing a smart energy profile using a datainterchange encoding, such as JSON, according to an embodiment of thedisclosure.

FIG. 2 is a schematic block diagram illustrating details of an examplesmart energy device according to an embodiment of the disclosure.

FIG. 3 is a flow chart indicating an example method for implementing asmart energy profile using a data interchange encoding, such as JSON,according to an embodiment of the disclosure.

DETAILED DESCRIPTION

Illustrative embodiments of the application will now be described morefully hereinafter with reference to the accompanying drawings, in whichsome, but not all embodiments of the disclosure are shown. Thedisclosure may be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein; rather, theseembodiments are provided so that this disclosure will satisfy applicablelegal requirements. Like numbers refer to like elements throughout.

As an overview, utility companies or other electricity providersgenerate and/or provide electricity to a power grid. The power grid mayprovide electricity to customers who consume the electricity or to otherutility companies. Customer usage of electricity can be monitoredthrough one or more metering devices. In certain instances, meteringdevices may include network devices to communicate with the power gridand/or electricity provider. Network devices can include, but are notlimited to, demand response meters, smart meters, advanced meteringinfrastructure (AMI) devices, and/or home area network (HAN) devices.

In certain instances, a grid center may transmit control messages to aheadend server for controlling one or more other sub-grids, electricitynetworks, and/or other consumers or customers' usage of electricity fromthe power grid. A headend server may provide instructions to one or morenetworks of devices located in a HAN. One or more metering devices mayreceive messages and/or instructions from the headend server through anetwork. The one or more metering devices may communicate these messagesand/or instructions to an associated smart energy device. In someinstances, smart energy devices may have limited memory resources.

In certain embodiments of the disclosure, a headend server or otherremote server can manage resources by implementing a smart energyprofile (SEP). The resources may be constrained by memory of the systemor by a capacity. A SEP can represent data schema for many data pointsto be exchanged between a smart device and a headend server. The SEP canbe a standard or a protocol that may allow interoperability of varioussmart energy devices. A SEP can provide for a common interface model(CIM) object manager. The CIM object manager can be software or anotherset of computer-executable instructions that may transfer data from theheadend server to the managed resources.

The CIM can be an open standard that may define how managed elements inan environment are represented as common set of objects. The CIM mayalso manage the relationship between these objects and may allowconsistent management of managed elements independent of themanufacturer's protocols.

However, smart energy devices have limited memory capabilities andresources. Therefore, the traditional CIM infrastructure may not beportable when controlling smart energy devices. Using JSON objects mayreduce the memory demands on the smart energy devices because they canbe parsed on the fly with minimal memory requirements.

Certain embodiments of the disclosure are directed to providing loadcontrol messages and/or instructions to certain network devicesassociated with metering devices. These messages and/or instructions caninstruct the metering devices to shed grid loads based on a wide varietyof factors and/or scenarios. For example, messages and/or instructionsmay be transmitted to one or more smart meters that instruct a smartmeter to enter into a relatively low power mode for a predeterminedamount of time. By way of another example, messages and/or instructionsmay be transmitted to one or more smart meters to place one or moreassociated processors in a relatively low power mode for a predeterminedamount of time. By way of further example, messages and/or instructionsmay be transmitted to one or more smart meters to place an associatedHAN network into a relatively low power mode for a predetermined amountof time.

Certain embodiments may be directed to using a data interchangeencoding, such as JSON, to implement a SEP. For example, messages and/orinstructions may be transmitted from HAN devices through the HAN gatewayby implementing a SEP using JSON. In one embodiment, a metering devicemay receive a control instruction for a HAN device either locally orremotely. A control instruction may include any type of instruction tocontrol or operate a HAN device. For example, a user might remotely,using a laptop or a mobile phone, transmit an instruction to an AMImeter to set a particular temperature of the house.

Each metering device may be connected to a local area network (LAN) or awireless area network (WAN). Once each metering device receives theinstructions, the instructions may be converted to a JSON object. TheJSON object can then be transmitted to a HAN connected device, such as asmart energy device. The JSON object may be transmitted through the HANto the smart energy device.

In this manner, certain technical solutions such as managing deviceswith constraints on usage of memory associated with the smart energydevices s can be provided by embodiments of the disclosure.

FIG. 1 is a schematic block diagram that provides an illustrativeoverview of an example system 100 according to an embodiment of thedisclosure. The system 100 may include a headend server 120 configuredto communicate via at least one network 121 with at least one energyservice interface (ESI) 122. The network 121 can be any type orcombination of wired or wireless networks, local or wide area networks,and/or the Internet.

The ESI 122 may be a smart meter or other type of metering device thatmay accept instructions and/or perform operations for measuringelectricity and/or power consumption, regulating consumption, and/ordisplaying consumption information. The ESI 122 may be in communicationwith at least one smart energy device 124 via a HAN or other network,such as 125. The smart energy device 124 may be any appliance, heater,air conditioner, etc. that is configured to be in communication with theESI 122.

Further referring to FIG. 1, in one illustrative configuration, the ESI122 may comprise at least a memory 102 and one or more processing unitsor processors 104. The one or more processors 104 may be implemented asappropriate in hardware, software, firmware, or combinations thereof.Software or firmware implementations of the one or more processors 104may include computer-executable or machine-executable instructionswritten in any suitable programming language to perform the variousfunctions described.

Memory 102 may store program instructions that are loadable andexecutable on the one or more processors 104, as well as data generatedduring the execution of these programs. Depending on the configurationand type of the ESI 122, the memory 102 may be volatile (such as randomaccess memory (RAM)) and/or non-volatile (such as read-only memory(ROM), flash memory, etc.). The ESI 122 may also include additionalremovable storage 106, and/or non-removable storage 108 including, butnot limited to, magnetic storage, optical disks, and/or tape storage.The disk drives and their associated computer-readable media may providenon-volatile storage of computer-readable instructions, data structures,program modules, and other data for the computing devices. In someimplementations, the memory 102 may include multiple different types ofmemory, such as static random access memory (SRAM), dynamic randomaccess memory (DRAM), or ROM.

The memory 102, the removable storage 106, and the non-removable storage108 are all examples of computer-readable storage media. For example,computer-readable storage media may include volatile and non-volatile,removable and non-removable media implemented in any method ortechnology for storage of information such as computer-readableinstructions, data structures, program modules or other data. The memory102, the removable storage 106, and the non-removable storage 108 areall examples of computer storage media. Additional types of computerstorage media that may be present include, but are not limited to,programmable random access memory (PRAM), SRAM, DRAM, RAM, ROM,electrically erasable programmable read-only memory (EEPROM), flashmemory or other memory technology, compact disc read-only memory(CD-ROM), digital versatile disc (DVD) or other optical storage,magnetic cassettes, magnetic tape, magnetic disk storage or othermagnetic storage devices, or any other medium which can be used to storethe desired information and which can be accessed by the server or othercomputing devices. Combinations of any of above should also be includedwithin the scope of computer-readable media.

Alternatively, computer-readable communication media may includecomputer-readable instructions, program modules, or other datatransmitted within a data signal, such as a carrier wave, or othertransmission. However, as used herein, computer-readable storage mediadoes not include computer-readable communication media.

The ESI 122 may also contain one or more communication connections 110that allow the ESI 122 to communicate with a stored database, anothercomputing device or server, user terminals, and/or other devices on anetwork. The ESI 122 may also include one or more input devices 112 suchas a keyboard, mouse, pen, voice input device, touch input device, etc.,and one or more output devices 114, such as a display, speakers,printer, etc.

Turning to the contents of the memory 102 in more detail, the memory 102may include an operating system 116 and one or more application programsor services for implementing the features disclosed herein including aconversion module 118. In some aspects, the conversion module 118 may beconfigured to convert instructions to a suitable data interchangeencoding, such as JavaScript Object Notation (JSON). In some examples,the conversion module 118 may utilize the communication connections 110for facilitating the transmission of the instructions converted to adata interchange encoding, such as JSON. The conversion module 118 mayalso convert the instructions into CIM object representation to a datainterchange encoding, such as JSON. These instructions may then betransmitted to one or more smart energy devices, such as 124.

FIG. 2 is a schematic block diagram detailing an example smart energydevice 124 according to an embodiment of the disclosure. The smartenergy device 124 may be any appliance or device that may be controlledthrough the home area network (HAN). The smart energy device 124 mayinclude a controller 212 and one or more communication connections 210.The controller 212 may be implemented in hardware, software, firmware orany combination thereof. The controller 212 may be used to execute anyinstructions received.

The smart energy device 124 may also include one or more processors 204.The one or more processors 204 may be implemented as appropriate inhardware, software, firmware, or combinations thereof. Software orfirmware implementations of the one or more processors 204 may includecomputer-executable or machine-executable instructions written in anysuitable programming language to perform the various functionsdescribed.

The smart energy device 124 may be, but is not limited to, anyappliance, any energy consuming devices, light, or other infrastructureelectrically connected in a HAN. The processor 204 may also receiveinstructions from the communications connections 210. The processor 204may translate the instructions and transmit them to the controller 212.In certain embodiments, the controller 212 may also receive instructionsfrom the communication connection(s) 210. In some examples, thecontroller 212 may include notifications or commands. The controller212, for example, may be configured to manage the smart energy device124 based at least in part on the received instructions. In one example,the controller 212 may operate the smart energy device 124 to turn thepower supply on or off. In other examples, the controller 212 may beconfigured to change settings on a smart energy device 124.

FIG. 3 is a flow chart indicating an example method 300 to implementdata interchange encoding, such as JavaScript Object Notation (JSON),processing in a smart energy profile (SEP) according to an embodiment ofthe disclosure. The method 300 can implement an example SEP using asuitable data interchange encoding, such as JSON. In operation block302, in one embodiment, a ESI device, such as 122 in FIG. 1, may receivecontrol instructions. The control instructions may include, but is notlimited to, any instructions to manage a smart energy device, such as124. The control instructions may be encoded in any suitable programminglanguage or markup language. In certain embodiments, the controlinstructions may be transmitted by a headend server, such as 120. Thecontrol instructions may be received as, for example, CIM objects in theSEP 2.0 standard. In other embodiments, the control instructions may besent from the headend server 120 as a JSON object.

In operation block 304, the control instructions can be converted into asuitable data interchange encoding object, such as a JSON object. In oneillustrative embodiment, the ESI device 122 may receive a controlinstructions, which may be converted into a JSON object. In otherembodiments, the headend server 120 may convert the control instructionsinto a JSON object, and then transmit it to the ESI device 122. Thecontrol instruction, which may be defined as a CIM objects, may beconverted into a JSON equivalent. In one embodiment, a conversionmodule, such as 118, may extract and capture information for eachattribute. In certain embodiments, the conversion module 118, may bewritten in a C object form or other suitable programming language. Theconversion module 118, may extract relevant data such as smart energydevice type, and state information. For example, if in SEP 2.0, a CIMobject can be created to define a new temperature for a refrigerator,and the conversion module 118 may extract information pertinent to theaction. The conversion module 118 may extract a smart energy device typeand the relevant operation to be performed. Once the information isextracted, the conversion module 118 may create a JSON object using JSONsyntax. The control module 118 may be implemented in firmware for theESI device 122. In another embodiment, the ESI device 122 may directlyreceive a JSON object from the headend server 120.

In operation block 306, the JSON object can be transmitted to the smartenergy device 124. In one embodiment, the JSON object may be transmittedto the smart energy device 124 using a home area network (HAN), such as125. The smart energy device 124 may receive the JSON object through itscommunication connections that may be communicatively coupled with theHAN. The JSON object representation may be encoded and decoded withminimal memory resources. In this manner, a processor, such as 204,associated with the smart energy device 124 may have sufficient cachingcapabilities to store the JSON object and execute the instructionswithin the smart energy device 124. A controller, such as 212,associated with the smart energy device 124 may execute the instructionson the smart energy device 124. For example, if a JSON object describesa new temperature setting for a refrigerator, the controller 212 maytransmit a signal to change the temperature for the refrigerator.

In operation block 308, the ESI device 122 may receive a JSON objectfrom the smart energy device 124. In this embodiment, once theinstructions have been executed, the controller 212 may receive a newstate for the smart energy device 124. The new state reflecting theexecuted instruction may be encoded into a JSON object by the processor204. This JSON object reflecting the new state of the smart energydevice 124 may be transmitted to the ESI device 122 via the HAN.

In operation block 310, the JSON object can be converted into a CIMobject. In this embodiment, the conversion module 118, may decode theJSON object and update the CIM object representing the particular smartenergy device 124. For example, the CIM object might have an updatedtemperature for the refrigerator after the ESI device 122 receives theJSON object from the refrigerator. In certain embodiments, the CIMobject may also be converted into an XML representation.

In operation block 312, the updated CIM object can be transmitted to theheadend server 120. In this embodiment, the ESI device 122 may transmitthe CIM object data for the smart energy device to the headend server120 after conversion from JSON representations. The CIM object may betransmitted via a wireless network or an AMI radio. In some embodiments,the ESI device 122 may have regular schedules to transmit CIM objectdata for all or many of the smart energy devices in communication withthe ESI device 122. For example, the ESI device 122 may have intervalswhere it updates the headend server of the states of all the smartenergy devices. In this situation, the ESI device 122 may store the CIMobjects in its memory 102. In other embodiments, the ESI device 122 maytransmit the new definitions for the CIM objects immediately afterconversion.

Illustrative methods and systems of implementing the load control ofdemand response network devices are described above. Some or all ofthese systems and methods may, but need not, be implemented at leastpartially by architectures such as those shown in FIG. 1 above.

It should be noted that the method 300 may be modified in various waysin accordance with certain embodiments of the disclosure. For example,one or more operations of the method 300 may be eliminated or executedout of order in other embodiments of the disclosure. Additionally, otheroperations may be added to the method 300 in accordance with otherembodiments of the disclosure.

Although embodiments have been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the disclosure is not necessarily limited to the specific featuresor acts described. Rather, the specific features and acts are disclosedas illustrative forms of implementing the embodiments.

That which is claimed:
 1. A system, comprising: at least one memory thatstores computer-executable instructions; at least one processorconfigured to access the at least one memory, wherein the at least oneprocessor is configured to execute the computer-executable instructionsto: receive, by the at least one processor, a control instruction for ahome area network (HAN) device; convert the control instruction to aJavaScript Object Notation (JSON) object; and transmit the JSON objectto the HAN device.
 2. The system of claim 1, wherein the at least oneprocessor is further configured to execute the computer-executableinstructions to receive, from the HAN device, HAN device data encoded asa JSON object.
 3. The system of claim 2, wherein the at least oneprocessor is further configured to execute the computer-executableinstructions to convert the HAN device data encoded as a JSON object toa common interface model (CIM) object.
 4. The system of claim 3, whereinthe at least one processor is further configured to execute thecomputer-executable instructions to transmit the CIM object to a headendserver.
 5. The system of claim 1, wherein the received controlinstruction comprises a CIM object.
 6. The system of claim 1, whereinthe CIM object complies with a smart energy profile (SEP) standard. 7.The system of claim 1, wherein the conversion of the control instructioncomprises the at least one processor being further configured to executethe computer-executable instructions to generate a C programmingstructure for the CIM object.
 8. The system of claim 1, wherein theconversion of the control instruction comprises the at least oneprocessor being further configured to execute the computer-executableinstructions to generate a C programming schema for each attribute ofthe CIM object.
 9. The system of claim 8, wherein the C programmingschema for each attribute of the CIM object is encoded using JSON syntaxprior to the transmission of the JSON object to the HAN device.
 10. Thesystem of claim 8, wherein the attribute comprises name, type, orlength.
 11. A method, comprising: receiving, from a headend server by atleast one processor of an energy service portal (ESP), a controlinstruction for a home area network (HAN) device; converting the controlinstruction to a JavaScript Object Notation (JSON) object; andtransmitting the JSON object to the HAN device.
 12. The method of claim11, further comprising receiving, from the HAN device, HAN device dataencoded as a JSON object.
 13. The method of claim 12, further comprisingconverting the HAN device data encoded as a JSON object to a commoninterface model (CIM) object.
 14. The method of claim 13, furthercomprising transmitting the CIM object to the headend server.
 15. Themethod of claim 11, wherein the received control instruction comprises aCIM object.
 16. The method of claim 11, wherein the CIM object complieswith a smart energy profile (SEP) standard.
 17. The method of claim 11,wherein converting the control instruction comprises generating a Cprogramming structure for the CIM object.
 18. The method of claim 11,wherein converting the control instruction comprises generating a Cprogramming schema for each attribute of the CIM object.
 19. The methodof claim 18, wherein the C programming schema for each attribute of theCIM object is encoded using JSON syntax prior to transmitting the JSONobject to the HAN device.
 20. One or more computer-readable mediastoring computer-executable instructions that, when executed by at leastone processor, configure the at least one processor to performoperations comprising: receiving, from a headend server by at least oneprocessor of an energy service portal (ESP), a control instruction for ahome area network (HAN) device from a headend server; parsing thecontrol instruction into at least a common interface model (CIM) objectand at least one attribute; generating a C programming structure for theCIM object; generating a C programming schema for each at least oneattribute; encoding the C programming structure and the C programmingschema using a JavaScript Object Notation (JSON) syntax to create a JSONobject; and transmitting the JSON object to the HAN device.